RaceVis: Ein Werkzeug zur Visualisierung von Data Races
نویسندگان
چکیده
Die Entwicklung und Wartung von nebenläufigen Programmen ist schwierig und fehleranfällig. Fehlende oder falsche Synchronisation kann zu komplizierten Fehlerszenarien führen, die dem Quelltext nur schwer anzusehen sind, jedoch katastrophale Auswirkungen auf die Programmausführung haben können. Durch statische Programmanalyse können alle Quelltextpositionen identifiziert werden, an denen bestimmte Fehler, wie z.B. Data Races, auftreten können. Ein Data Race existiert in einem nebenläufigen Programm, wenn mehrere Threads auf eine gemeinsam genutzte Variable (Shared Variable) zugreifen und folgendes gilt: (1) mindestens ein Thread schreibt auf die Variable und (2) die einzelnen Zugriffe finden ohne Synchronisation statt. Data Races können zu inkonsistenten Daten im Speicher führen und schwerwiegende Folgen für die korrekte Ausführung des Programms haben. Führen beispielsweise zwei Threads gleichzeitig die Operation g = g + c für eine globale Variable g aus, so hängt der resultierende Wert von g davon ab, in welcher Reihenfolge die beiden Threads den alten Wert von g lesen und den neuen Wert in den Speicher ablegen. Zur Erkennung von Data Races wurden in den letzten Jahren eine Vielzahl von Verfahren erforscht. In dem Projekt Bauhaus [2] wurde ein Verfahren zur statischen Analyse basierend auf dem LocksetAlgorithmus [1] implementiert. Aufgrund der prinzipiellen Unentscheidbarkeit des Problems muss eine statische Analyse jedoch die Menge der tatsächlichen Data Races überschätzen. Es wird eine Anzahl an falsch positiven Warnungen erzeugt, die in keiner realen Ausführung des analysierten Programms tatsächlich eintreten können. Für den praktischen Einsatz der Analysen ist deshalb ein Werkzeug nötig, das die Warnungen in geeigneter Form für einen Benutzer aufbereitet. Der Benutzer muss manuell untersuchen können, welche Warnungen tatsächliche Data Races darstellen und welche gefiltert werden sollten. Zu diesem Zweck wird in diesem Papier das Werkzeug RaceVis vorgestellt. Es wurde als Teil des Bauhaus-Projekts als Plugin für die Entwicklungsplattform Eclipse implementiert.
منابع مشابه
Ein prototypisches Werkzeug zur flexiblen Visualisierung komplexer Datenbestände
Visualisierung gilt als eine wichtige Technik, um Benutzern von Informationssystemen die Interaktion mit großen und komplexen Datenmengen zu erleichtern. Insbesondere niedrigdimensionale Dokumentkarten gewannen nicht zuletzt durch erfolgreiche Implementierungen im Internet an Bedeutung. Diese Karten gruppieren hochdimensionale Ausgangsdaten wie beispielsweise Textdokumente auf einer zweidimensi...
متن کاملEntwicklung eines werkzeugs zur standortbestimmung von IT-abteilungen basierend auf COBIT 5
(IT-)Berater stehen immer wieder vor derselben Herausforderung, nämlich, effizient und effektiv herauszufinden, wo beim Kunden (und seiner IT) Verbesserungspotenziale vorhanden ist. Dies führte im folgenden Beitrag für den IT-Bereich zur systematischen auf dem IT-GovernanceFramework COBIT beruhenden Entwicklung eines Werkzeugs und einer Methode zur Analyse von IT-Abteilungen. Ziel ist es, eine ...
متن کاملVisuelles Wissensmanagement mit adaptierbaren Dokumentenlandkarten
Dokumentiertes Wissen zu analysieren, zu strukturieren und zu organisieren ist ein wichtiger Bestandteil des Wissensmanagements. In der Literatur sind sogenannte Dokumentenlandkarten zur Visualisierung der inhaltlichen Ähnlichkeitsstruktur eines Textkorpus vorgeschlagen worden. Ausgehend von einem empirischen Aufgabenmodell wird in dieser Arbeit ein adaptierbares Rahmenmodell zur Generierung vo...
متن کاملKartogramme zur Visualisierung Geographie-Bezogener Daten
Abstract: Kartogramme stellen ein wichtiges Werkzeug zur Visualisierung und Analyse geographie-bezogener Daten dar. Sie ermöglichen eine korrekte Darstellung und dadurch das Verständnis von z.Bsp. statistischen Daten, Telefonvolumina und Wählerverhalten bzgl. ihrer geographischen Position. Der Hauptbeitrag der Dissertation besteht darin, daß zwei völlig neuartige Algorithmen zur Berechnung von ...
متن کاملEin interaktives Tool für die Segmenteinteilung der Leber in der chirurgischen Operationsplanung
Zusammenfassung: Zur Leberresektionsplanung stehen dem Chirurgen kontrastmittelverstärkte CTund MR-Aufnahmen zur Verfügung, die jedoch eine genaue Volumenabschätzung von Leberparenchym und Tumorgewebe nicht ermöglichen. Zudem ist die dreidimensionale Struktur der Gefäßbäume innerhalb zweidimensionaler Schichtbilder nur sehr schwer zu beurteilen. Dazu wurde ein Werkzeug entwickelt, das es ermögl...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Softwaretechnik-Trends
دوره 30 شماره
صفحات -
تاریخ انتشار 2010